/**
 * 将下面异步代码使用 Promise 的方式改进
 */

setTimeout(function () {
    var a = 'hello'
    setTimeout(function () {
        var b = 'lagou'
        setTimeout(function () {
            var c = 'I ♥ U'
            console.log(a + b + c)
        }, 10)
    }, 10)
}, 10)

// 定义一个函数，返回 promise
function p(str){
    return new Promise((resolve,reject)=>{
        resolve(str)
    })
}

// 预定义三个字符串变量
let str1 = 'hello'
let str2 = 'lagou'
let str3 = 'I ♥ U'
// 通过 promise 的方式将三个字符串拼接起来，保证顺序
p(str1)
    .then(str=>{
        return p(str+str2)
    })
    .then(str=>{
        return p(str+str3)
    })
    .then(str=>{
        console.log('拼接后的字符串：',str)
    })